package com.king.designpatterns.行为模式.备忘录模式;

/**
 * 发起人 - 控制需要被纳入版本控制系统的文档
 * @author king
 * @date 2021-06-11 10:25
 */
public class Document {
    /**
     * 需要备份的状态
     */
    String content;
    /**
     * 不需要备份的状态
     */
    String otherContent;

    /**
     * 保存备份
     */
    public Backup save() {
        System.out.println("保存备份");
        return new Backup(content);
    }

    /**
     * 恢复为某个状态
     */
    public void resume(Backup backup){
        System.out.println("恢复备份");
        content = backup.content;
    }

    @Override
    public String toString() {
        return "Document{" +
                "content='" + content + '\'' +
                ", otherContent='" + otherContent + '\'' +
                '}';
    }
}
